System and method of de-skewing electrical signals

ABSTRACT

A method and apparatus of a device that determines transmit and receive skew times between pairs of lanes of an electrical interface of a network element is described. In an exemplary embodiment, the device couple an optical loopback to transmit and receive interfaces of an optical interface, the optical loopback capable of transporting a first optical signal with a plurality of polarization and quadrature combinations. In addition, the device determines the receive skew time by transmitting a second optical signal on the optical loopback with one of the plurality of polarization and quadrature combinations. Furthermore, the device determines the transmit skew time by, tuning transmission delays on the transmit interface for a third optical signal with components corresponding to a pair of the plurality of polarization and quadrature combinations such that the third optical signal is recoverable on the receive interface.

RELATED APPLICATIONS

The application is a divisional of co-pending U.S. patent applicant Ser.No. 14/683,745, filed Apr. 10, 2015, the entirety of which isincorporated by reference.

FIELD OF INVENTION

This invention relates generally to data networking, and moreparticularly, to de-skewing electrical signals in preparation to bemodulated into a WDM optical signal.

BACKGROUND OF THE INVENTION

A network element with an optical link can transmit multiple wavelengthson a single optical link in order to transmit more data on that opticallink. In order to further increase capacity and extend reach of anoptical link, multiple electrical signals are modulated into a singleoptical wavelength. For example, the optical signal can be a coherentoptical signal where the multiple electrical signals are modulated intothe optical wavelength. In this example, the electrical signals aremodulated using polarization and quadrature to create a coherent opticalsignal on one wavelength from the electrical signals. In order tosuccessfully demodulate the signals on the other end of the link, thesesignals need to arrive at the optical modulator at the same time. Therealso must be similar alignment on the receive physical interface (PHY).For example, if a pulse is transmitted on the four wires simultaneously,each of these pulses need to arrive within fractions of picoseconds inorder for the pulses to be recovered on the receive PHY optimally. Theamount of time difference in the pulse arrival between signals is knownas skewing.

A pulse is delayed for a signal based on manufacturing variabilitiesthat are inherent in the PHY, circuit board, connector interfaces andoptical modules. A process known as de-skewing is performed to determinethe amount of skew in the optical link and to configure the transmit andreceive interfaces to remove this skew. The de-skewing process needs tobe performed for each electrical interface that is manufactured for eachnetwork element. For example, the skew can be determined using a digitalcommunications analyzer (DCA). The DCA measures the skew of the transmitPHYs and adjusts the skew to compensate for any difference betweenelectrical signals. Properly de-skewed transmit signals then allows thereceive PHY skews to be properly measured. This measurement can beperformed by the PHY itself and requires no external hardware. With ade-skewed optical link, data transported in a coherent manner, arrive atthe receive PHY within the allowed tolerances.

A problem with using the DCA to determine the transmit and receive PHYsskews is that this is an expensive process because the DCA itself is avery expensive and precise instrument. Introducing the DCA into themanufacture and calibration process of a network element with an opticalinterface increases the cost of manufacturing process for this device.Furthermore, the DCA is a precise instrument that is better suited in alab environment rather than a manufacturing environment. This can meanthat the DCA is not robust enough to be used long-term in amanufacturing environment leading to further cost due to DCAmaintenance. Thus, using a DCA in such an environment increases the costto produce and manufacturer network element with an optical interface.

SUMMARY OF THE DESCRIPTION

A method and apparatus of a device that determines transmit and receiveskew times between pairs of lanes of an electrical interface of anetwork element is described. In an exemplary embodiment, the devicereceives a plurality of configurations corresponding to a plurality ofelectrical loopbacks that can each couple transmit and receiveinterfaces of the electrical interface via the plurality of lanes indifferent patterns. In addition, for each of the plurality of electricalloopbacks, the device couples this electrical loopback to the transmitand receive interfaces of the electrical interface and measures overallskew times for pairs of the plurality of lanes of the electricalinterface. Furthermore, the device computes the transmit and receiveskew times for the transmit and receive interfaces from the overall skewtimes.

In another embodiment, the device couples an optical loopback totransmit and receive interfaces of an optical interface, the opticalloopback capable of transporting a first optical signal with a pluralityof polarization and quadrature combinations. In addition, the devicedetermines the receive skew time by transmitting a second optical signalon the optical loopback with one of the plurality of polarization andquadrature combinations. Furthermore, the device determines the transmitskew time by tuning transmission delays on the transmit interface for athird optical signal with components corresponding to a pair of theplurality of polarization and quadrature combinations such that thethird optical signal is recoverable on the receive interface.

Other methods and apparatuses are also described.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example and notlimitation in the figures of the accompanying drawings in which likereferences indicate similar elements.

FIG. 1A is a block diagram of one embodiment of two devices coupled byan optical link.

FIG. 1B is a block diagram of one embodiment of devices coupled to aloopback.

FIG. 2 is an illustration of one embodiment of signal skewing formultiple pulses in a multiple lane signal.

FIG. 3 is a block diagram of one embodiment of an electrical loopbackusing a DCA to determine transmit and receive PHY skew times.

FIGS. 4A-D are block diagrams of embodiments of using an electricalloopback to determine signal skew times.

FIG. 5 is a flow diagram of one embodiment of a process to use differentelectrical loopbacks to determine skew times of an optical interfacewith multiple wavelengths.

FIGS. 6A-B are block diagrams of embodiments using an optical loopbackto determine receive PHY skew times.

FIG. 7A-C are block diagrams of one embodiment of using an opticalloopback to determine transmit PHY skew times.

FIG. 8 is a flow diagram of one embodiment of a process to determineelectrical skew times of an electrical signal with multiple lanes usingan optical loopback.

FIG. 9 is a block diagram of one embodiment of an electrical skew modulethat uses different electrical loopbacks to determine electrical skewtimes of an electrical signal with multiple lanes.

FIG. 10 is a block diagram of one embodiment of an optical skew modulethat determines electrical skew times of an electrical signal withmultiple lanes using an optical loopback.

FIG. 11 illustrates one example of a typical computer system, which maybe used in conjunction with the embodiments described herein.

FIG. 12 is a block diagram of one embodiment of an exemplary networkelement that de-skews a coherent optical signal using an electrical oroptical loopback.

DETAILED DESCRIPTION

A method and apparatus of a device that determines transmit and receiveskew times between pairs of lanes of an electrical interface of anetwork element is described. In the following description, numerousspecific details are set forth to provide thorough explanation ofembodiments of the present invention. It will be apparent, however, toone skilled in the art, that embodiments of the present invention may bepracticed without these specific details. In other instances, well-knowncomponents, structures, and techniques have not been shown in detail inorder not to obscure the understanding of this description.

Reference in the specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment can be included in at least oneembodiment of the invention. The appearances of the phrase “in oneembodiment” in various places in the specification do not necessarilyall refer to the same embodiment.

In the following description and claims, the terms “coupled” and“connected,” along with their derivatives, may be used. It should beunderstood that these terms are not intended as synonyms for each other.“Coupled” is used to indicate that two or more elements, which may ormay not be in direct physical or electrical contact with each other,co-operate or interact with each other. “Connected” is used to indicatethe establishment of communication between two or more elements that arecoupled with each other.

The processes depicted in the figures that follow, are performed byprocessing logic that comprises hardware (e.g., circuitry, dedicatedlogic, etc.), software (such as is run on a general-purpose computersystem or a dedicated machine), or a combination of both. Although theprocesses are described below in terms of some sequential operations, itshould be appreciated that some of the operations described may beperformed in different order. Moreover, some operations may be performedin parallel rather than sequentially.

The terms “server,” “client,” and “device” are intended to refergenerally to data processing systems rather than specifically to aparticular form factor for the server, client, and/or device.

A method and apparatus of a device that determines transmit and receiveskew times between pairs of lanes of an electrical interface of anetwork element is described. In one embodiment, the device determinesthe transmit and receive skew times for a transmit and receive PHY usingeither an electrical loopback or an optical loopback. These transmit andreceive skew times can be used to compensate the transmit and receivePHY such that a coherent optical signal can be transmitted and/orreceived using the PHYs. In one embodiment, the device measures multipleoverall skew times between different lanes of the transmit and receivesPHYs using different electrical loopbacks so as to determine individualtransmit and receive skew times. For example and in one embodiment, thedevice measures an overall skew times for lanes 1 and 2 and lanes 3 and4 for a transmit and receive PHY using three or four differentelectrical loopbacks. In this example, the different electricalloopbacks represent different patterns of coupling the transmit PHYlanes to the receive PHY lanes. The electrical loopbacks can be astraight line connection or a twisted connection that couples one of thetransmit lanes with a different numbered receive PHY lane. Each of theelectrical loopback configurations has an associated set of equationsthat relates the overall skew times to the individual transmit andreceive skew times. In one embodiment, by using three of the differentelectrical loopbacks, the individual transmit and receive skew times canbe determined for a PHY with four lanes.

In another embodiment, the device determines the transmit and receiveskew times using an optical loopback that couples a transmit and receivePHY by selectively transmitting electrical pulses on one, some, and/orall of the transmit electrical lanes of the transmit PHY. In thisembodiment, by transmitting an electrical pulse on different ones of thetransmit PHY lanes, the device can determine the individual receive skewtimes. With the known receive skew times, the device can determine theindividual transmit skew times by transmitting electrical pulses onpairs or all of the electrical lanes and varying the pulse transmissiontimes, such that a recoverable signal is found on the receive PHY.

FIG. 1A is a block diagram of one embodiment of two devices 116A-Bcoupled by an optical link 114 via the PHYs 102A-B of the devices116A-B. In FIG. 1A, the device 116A includes a PHY 102A and an opticaltransceiver 104A, where the PHY 102A is coupled to optical transceiverby electrical wires that carry electrical signals 110A. In oneembodiment, the optical transceiver 104A is part of an optical module(not illustrated) of an optical interface of the device 116A and the PHY102A is on a board (e.g., a line card, motherboard, or other type ofboard). In this embodiment, the optical module may also include otheroptical transceivers and receivers. For example and in one embodiment,the optical transceiver 104A is a compact form pluggable-2 (CFP2)module. The optical transceiver 104A is coupled to a multiplexer 106 viaan optical link that carries an optical signal 112A transmitted by theoptical transceiver 104A. The multiplexer 106 multiplexes this opticalsignal with other optical signals and transmits the multiplexed opticalsignal to the de-multiplexer 108. In one embodiment, the optical link114 is a fiber-optic link that is capable of transmitting multiplewavelengths concurrently. For example and in one embodiment, the opticallink 114 is a wavelength division multiplexing (WDM) optical link thatmultiplexes a number of different wavelengths in a single optical fiberby using different wavelengths of laser light. The optical link can be acoarse DM, dense DM, or another type of optical link 114 thatmultiplexes difference wavelengths in an optical signal. In thisexample, a multiplexer 106 at the transmitter joins the differentwavelengths together and a de-multiplexer at the receiver splits thesewavelengths apart. The de-multiplexer 108 de-multiplexes the receivedoptical signal 114 into separate single wavelength optical signals 112B.One of the single wavelength optical signals 112B is received by thedevice 116B. The device 116B includes a PHY 102B and an optical receiver104B, where the PHY 102A is coupled to optical receiver 104B byelectrical wires that carry electrical signals 110B. In one embodiment,the optical receiver 104B is part of an optical module (not illustrated)of an optical interface of the device 116B. In this embodiment, theoptical module may also include other optical transmitters andreceivers. In addition, each optical transmitter and receiver isassociated with a corresponding transmit and receive PHY, respectively.

In one embodiment, the electrical signals 110A-B carried between the PHY102A and optical transceiver 104A and between the optical receiver 104Band PHY 102B are a set of electrical pulses. In this embodiment, the PHY102A generates a set of electrical signals 110A that are converted intoa coherent optical signal by modulating the electrical signals using thepolarization and quadrature into an optical signal. Each of theelectrical signals 110A is transported in a separate lane. The coherentsignal is multiplexed with other optical signals, carried as part of themultiplexed optical signal (e.g., WDM), de-multiplexed by ade-multiplexer 108, and received by the optical receiver 104B of device116B. The optical receiver 104B converts the received coherent opticalinto a set of electrical signals 110B. Each of the electrical signal110B carries an electrical pulse in a different lane. In one embodiment,a lane is a wire that carries an electrical signal. In order for thedevice 116B to recover the data transported on these electrical signals,the different pulses of the electrical signals need to be off by a skewof less than fractions of picoseconds. If the electrical pulses areskewed by more than this amount, the resulting coherent optical signalwill be degraded or unable to transport the data.

As described above, the pulses that are transmitted along these lanesneed to be aligned within a tight tolerance so as to successfullytransport data along the optical link. In one embodiment, the skews forthe different lanes can originate in the physical layer (PHY) of thetransmitting and receiving interfaces, which are in the electricaldomain and before the signal gets transformed into an optical signal. Inone embodiment, when a network element with these optical interfacesgets manufactured, each of the transmit and receive interfaces of theseelectrical interfaces is measured for an inherent skew. Each of theseinterfaces is then adjusted based upon the measurements so that thepulses transmitted and received by the interfaces of the receive PHYhave zero skew or a skew tighter than the acceptable tolerance, suchthat data can be transmitted across the optical link 114 one coherentwavelength. In one embodiment, an optical interface includes electricaltransmit and receive PHYs, as well as optical transmitter and receivers.In this embodiment, the optical transceivers are removable.

In one embodiment, a loopback is used to determine the skews of pulsestransmitted across these electrical lanes. FIG. 1B is a block diagram ofone embodiment of a device 152 coupled by a loopback. In FIG. 1B, adevice 152 is coupled to a loopback 154, where the loopback 154 receivesthe transmitted signal 156A from the device 152 and forwards this signal156B to the receive interface of the device 152. In one embodiment, thetransmitted and received signals 156A-B are signals that supportmultiple electrical signals. In one embodiment, the loopback 154 is usedto measure the difference in transmission time of pulses sent across thedifferent lanes to determine a skew time for each of the lane. With theskew times measured, the transmit and receive interfaces can becalibrated so that the skew times are within the acceptable tolerances.

FIG. 2 is an illustration of one embodiment of signal skewing formultiple pulses 200A-D in a multiple lane electrical signal. In FIG. 2,four different pulses 200A-B are illustrated, where the rises of thepulses are not aligned in time. Each of the pulse rises is slightlyskewed from the other pulse rises. For example and in one embodiment,there is a skew 202A between pulse 200A and pulse 200B. This skew 202Ais the time difference between the rise in the pulses of lanes 1 and 2.As described above, this skew 202A can occur in the electrical domain,which means the skew 202A originates in the PHY of the transmit andreceive interfaces when the signal is an electrical signal, and notwhile the signal is an optical signal. Thus, in this embodiment, each ofthe pulses 202A-D is an electrical pulse. Pulses 202A-D correspond tolane 1-4, respectively. There is a skew 202A, S₁₂, between lanes 1 and 2that is the difference in time between the beginning of the pulse risefor pulsed 202A and pulse 202B. Similarly, there is a skew 202B, S₃₄ forlanes 3 and 4 that is the difference in time between the beginning ofthe rise in pulse 202C and pulse 202D, respectively. In anotherembodiment, there can be skews between other lane pairs (notillustrated), such as S₁₃ (skew between lanes 1 and 3), S₁₄ (skewbetween lanes 1 and 4), S₂₃ (skew between lanes 2 and 3), and S₂₄ (skewbetween lanes 2 and 4).

FIG. 3 (prior art) is a block diagram of one embodiment of using anoptical loopback 308 and a DCA 312 to determine signal skew times. InFIG. 3, the transmit PHY 304 is coupled to an optical TX 314 with a setof lanes 302A-D. Each of these lanes carries an electrical signal. Inone embodiment, the electrical signals are labeled HI, HQ, VI, and VQ,which reference a different set of polarization and quadraturecombinations. In one embodiment, each lane is a set of two wires (1positive, 1 negative). A voltage difference is applied across the wiresto indicate a 1 or 0 (or some analog value in between). The optical TX314 modulates these electrical signals into a coherent optical signalthat is transmitted to a digital communications analyzer (DCA) 312 thatis used to determine the transmit skew used to times for each lane,lanes 1-4 (302A-D). In one embodiment, the optical drivers can be turnedon, one at a time, to measure and adjust the skew times of lanes 1-4(302A-D), such that there is zero skew between these lanes 302A-D (310).In one embodiment, the DCA 312 terminates the coherent optical signal.After the transmit skew has been measured and compensated for, the DCA312 can be removed. An optical loopback 308 is inserted in place of theDCA 312 to allow the coherent optical signal to be transported to theoptical receive 316. The optical loopback 308 forwards the opticalsignal to the optical receiver 316 which forwards the electrical signalto the receive PHY 306. Since there is zero skew before the opticalloopback 308, the skew that is measured in the receive PHY 306 is due toskew introduced in the optical receive 316 and receive PHY 306. Whilethis scheme can be used to determine the skew for both the transmit PHY304 and the receive PHY 306, using a DCA 312 to determine these skewtimes is expensive because the DCA 312 itself is a very expensive andprecise instrument. Introducing the DCA 312 into the manufacture andcalibration process of a network element with an optical interfaceincreases the cost of manufacturing this device. Furthermore, the DCA312 is a precise instrument that is better suited in a lab environmentrather than a manufacturing environment. This can mean that the DCA 312is not robust enough to be used long-term in a manufacturingenvironment. Thus, using a DCA 312 in such an environment increases thecost to produce and manufacture a network element with an opticalinterface.

As per above, manufacturing and calibrating a network element withmultiple electrical lanes which are highly sensitive to skew using theDCA increases the cost of manufacturing calibrate such a networkelement. FIGS. 4A-D are block diagrams of embodiments of using anelectrical loopback or loopbacks to determine signal skew times. InFIGS. 4A-D, electrical loopbacks with different electrical connectivityare used to determine the transmit PHY and receive PHY skew times. InFIG. 4A, a straight line electrical loopback 408 is used to couple thelanes 402A-D of the transmit PHY 404 to the lanes 410A-D of the receivePHY 406, respectively. In one embodiment, the transmit PHY 404 and thereceive PHY 406 are part of the same PHY module. In one embodiment,overall skew times can be measured for different line pairs using thiselectrical loopback 408. In this embodiment, the overall skew times forlanes 1 and 2, S12, is equal to the skew due to the transmit PHY 404,the skew due to the receive PHY 406, and the skew due to the electricalloopback 408. Mathematically, this can be represented (412) asS ₁₂ =T ₁₂ +R ₁₂ +C _(A12)  (1)where T₁₂ is the skew due to the transmit PHY 404 for lanes 1 and 2(402A-B), R₁₂ is the skew due to the receive PHY 406 for lanes 1 and 2(410A-B), and C_(A12) is the skew due to the electrical loopback 408 forlanes 1 and 2. In one embodiment, the electrical loopback 408, C_(A12),skew is a known quantity that is determined before the skew is measuredfor the transmit and receive PHYs. Similarly, the overall skew times forlanes 3 and 4, S₃₄, is equal to the skew due to the transmit PHY 404,the skew due to the receive PHY 406, and the skew due to the electricalloopback 408. Mathematically, this can be represented (414) asS34=T34+R34+CA34  (2)where T₃₄ is the skew due to the transmit PHY 404 for lanes 3 and 4(402C-D), R₃₄ is the skew due to the receive PHY 406 for lanes 3 and 4(410C-D), and C_(A34) is the skew due to the electrical loopback 408 forlanes 3 and 4. In one embodiment, the electrical loopback 408 constant,C_(A34), skew is a known quantity that is determined before the skew ismeasured for the transmit and receive PHYs. In one embodiment, thesystem 400 includes a supervisor 416 that records the overall skew timesand which type of electrical loopback is used. In one embodiment, thesupervisor 416 is a separate computer that includes an electrical skewmodule 418 that controls the skew time measurement and records the skewtimes. In another embodiment, the supervisor 416 is part of the networkelement that is testing and recording the skew times.

In one embodiment, the equations (1) and (2) have several unknowns (T₁₂,R₁₂, T₃₄, and R₃₄) that can be found by using additional loopbacks withdifferent electrical connections between the transmit and receive lanes.In FIG. 4B, a twisted electrical loopback 428 is used to couple thelanes 1 and 2 (422A-B) of the transmit PHY 424 to the lanes 2 and 1(430B and 430A) of the receive PHY 426, respectively. In addition, thetwisted electrical loopback 428 is used to couple the lanes 3 and 4(422C-D) of the transmit PHY 424 to the lanes 4 and 3 (430D and 430C) ofthe receive PHY 426, respectively. In one embodiment, the transmit PHY424 and the receive PHY 426 are part of the same PHY module. In oneembodiment, by swapping the lanes as illustrated, different equationsare used to determine the overall skew times. In this embodiment, theoverall skew times using this electrical loopback can be measured fordifferent lane pairs using this electrical loopback 428. In thisembodiment, the overall skew times for lanes 1 and 2, S₁₂, is equal tothe skew due to the transmit PHY 424, the skew due to the receive PHY426, and the skew due to the electrical loopback 428. Mathematically,this can be represented (432) asS12=−T12+R12+CB12  (3)where T₁₂ is the skew due to the transmit PHY 424 for lanes 1 and 2(422A-B), R₁₂ is the skew due to the receive PHY 426 for lanes 1 and 2(430A-B), and C_(B12) is the skew due to the electrical loopback 428 forlanes 1 and 2. In one embodiment, the electrical loopback 428, C_(B12),skew is a known quantity that is determined before the skew is measuredfor the transmit and receive PHYs. Similarly, the overall skew times forlanes 3 and 4, S₃₄, is equal to the skew due to the transmit PHY 424,the skew due to the receive PHY 426, and the skew due to the electricalloopback 428. Mathematically, this can be represented (434) asS34=−T34+R34+CB34  (4)where T₃₄ is the skew due to the transmit PHY 424 for lanes 3 and 4(422C-D), R₃₄ is the skew due to the receive PHY 426 for lanes 3 and 4(430C-D), and C_(B34) is the skew due to the electrical loopback 428 forlanes 3 and 4. In one embodiment, the electrical loopback 428 constant,C_(B34), skew is a known quantity that is determined before the skew ismeasured for the transmit and receive PHYs. In one embodiment, thesystem 420 includes a supervisor 436 that records the overall skew timesand which type of electrical loopback is used. In one embodiment, thesupervisor 436 is a separate computer that includes an electrical skewmodule 438 that controls the skew time measurement and records the skewtimes. In another embodiment, the supervisor 436 is part of the networkelement that is testing and recording the skew times.

With loopbacks 408 and 428, the skew between lanes 1 and 2 and lanes 3and 4 can be determined, but the skew between, for example, lanes 2 and3 (or 1 and 4, etc.) is still unknown. In FIG. 4C, another type oftwisted electrical loopback 448 is used to couple the lanes 2 and 3(442B-C) of the transmit PHY 444 to the lanes 3 and 2 (450C and 450B) ofthe receive PHY 446, respectively. In one embodiment, the transmit PHY444 and the receive PHY 446 are part of the same PHY module. Inaddition, this electrical loopback 448 couples the lanes 1 and 4 (442Aand 442D) of the transmit PHY 444 to the lanes 1 and 4 (450A and 450D)of the receive PHY 446, respectively. In one embodiment, by swapping themiddle lanes as illustrated, different equations are used to determinethe overall skew times. In this embodiment, the overall skew times usingthis electrical loopback can be measured for different line pairs usingthis electrical loopback 448. In this embodiment, the overall skew timesfor lanes 1 and 2, S₁₂, is equal to the skew due to the transmit PHY444, the skew due to the receive PHY 446, and the skew due to theelectrical loopback 448. Mathematically, this can be represented (452)asS12=T13+R12+CC13  (5)where T₁₃ is the skew due to the transmit PHY 444 for lanes 1 and 3(442A and 442C), R₁₂ is the skew due to the receive PHY 446 for lanes 1and 2 450A-B), and C_(C13) is the skew due to the electrical loopback428 for lanes 1 and 3. In one embodiment, the electrical loopback 448,C_(C13), skew is a known quantity that is determined before the skew ismeasured for the transmit and receive PHYs. Similarly, the overall skewtimes for lanes 3 and 4, S₃₄, is equal to the skew due to the transmitPHY 444, the skew due to the receive PHY 446, and the skew due to theelectrical loopback 448. Mathematically, this can be represented (454)asS34=T24+R34+CC24  (4)where T₂₄ is the skew due to the transmit PHY 444 for lanes 4 and 2(442C and 422B), R₃₄ is the skew due to the receive PHY 446 for lanes 3and 4 (450C-D), and C_(C24) is the skew due to the electrical loopback448 for lanes 2 and 4. In one embodiment, the electrical loopback 448constant, C_(C24), skew is a known quantity that is determined beforethe skew is measured for the transmit and receive PHYs. In oneembodiment, by using these three different electrical loopback givesequations (1)-(6) with six unknowns (T₁₂, T₃₄, T₁₃, T₂₄, R₁₂, and R₃₄)that can be solved. In one embodiment, the skew time T₂₄ is a linearcombination of the other three transmit skews, which reduces the numberof unknowns to five. Solving these equations gives the transmit andreceive skew times that can be used to de-skew the transmit and receivePHYs. While in one embodiment, specific electrical loopbackconfigurations are illustrated, in alternate embodiments, differentelectrical loopback configurations can be used to determine transmit andreceive PHY skew times. In a further embodiment, different electricalloopback configurations can be used for electrical lane de-skewing formore or less than four lanes. In a further embodiment, different skewscan be measured to meet different requirements for optical modules andDSPs. In one embodiment, the system 440 includes a supervisor 456 thatrecords the overall skew times, which type of electrical loopback isused, and solves for the transmit and receive PHY skew times. In oneembodiment, the supervisor 456 is a separate computer that includes anelectrical skew module 458 that controls the skew time measurement andrecords the skew times. In another embodiment, the supervisor 456 ispart of the network element that is testing and recording the skewtimes.

In one embodiment, an additional electrical loopback configuration canbe used to check the results of the electrical loopbacks used above inFIGS. 4A-C. In FIG. 4D, a further type of twisted electrical loopback468 is used to couple the lanes 2 and 4 (462B and 462C) of the transmitPHY 464 to the lanes 4 and 2 (470D and 470B) of the receive PHY 466,respectively. In one embodiment, the transmit PHY 464 and the receivePHY 466 are part of the same PHY module. In addition, this electricalloopback 468 couple the lanes 1 and 3 (462A and 462C) of the transmitPHY 464 to the lanes 1 and 3 (470A and 470C) of the receive PHY 466,respectively. In one embodiment, by swapping lanes 2 and 4 asillustrated, different equations are used to determine the overall skewtimes. In this embodiment, the overall skew times using this electricalloopback can be measured for different line pairs using this electricalloopback 468. In this embodiment, the overall skew times for lanes 1 and2, S₁₂, is equal to the skew due to the transmit PHY 464, the skew dueto the receive PHY 466, and the skew due to the electrical loopback 468.Mathematically, this can be represented (472) asS12=T14+R12+CD14  (7)where T₁₄ is the skew due to the transmit PHY 464 for lanes 1 and 4(462A and 462D), R₁₂ is the skew due to the receive PHY 466 for lanes 1and 2 (462A-B), and C_(D14) is the skew due to the electrical loopback428 for lanes 1 and 4 (462A and 462D). In one embodiment, the electricalloopback 468 skew C_(D14) is a known quantity that is determined beforethe skew is measured for the transmit and receive PHYs. Similarly, theoverall skew times for lanes 3 and 4, S₃₄, is equal to the skew due tothe transmit PHY 464, the skew due to the receive PHY 466, and the skewdue to the electrical loopback 468. Mathematically, this can berepresented (474) asS34=T32+R34+CD32  (8)where T₃₂ is the skew due to the transmit PHY 464 for lanes 3 and 2(462C and 462B), R₃₄ is the skew due to the receive PHY 466 for lanes 3and 4 (462C-D), and C_(D32) is the skew due to the electrical loopback468 for lanes 3 and 2 (462C-D). In one embodiment, the electricalloopback 468 constant, C_(C32), skew is a known quantity that isdetermined before the skew is measured for the transmit and receivePHYs. In one embodiment, with the additional electrical loopback, theskew times T₁₄ and T₃₂ can be determined. The skew times T₁₄ and T₃₂ canbe compared to T₁₄ and T₃₂ that are derived from the T₁₂, T₂₄, T₁₃, T₂₄determined using the electrical loopbacks in FIGS. 4A-C. In oneembodiment, using the additional electrical loopback provides additionalprecision but is optional. In one embodiment, the system 460 includes asupervisor 476 that records the overall skew times, which type ofelectrical loopback is used, and solves for the transmit and receive PHYskew times. In one embodiment, the supervisor 476 is a separate computerthat includes an electrical skew module 478 that controls the skew timemeasurement and records the skew times. In another embodiment, thesupervisor 476 is part of the network element that is testing andrecording the skew times.

FIG. 5 is a flow diagram of one embodiment of a process 500 to usedifferent electrical loopbacks to determine skew times of an electricalinterface with multiple lanes. In one embodiment, an electrical skewmodule performs process 500, such as the electrical skew module 900 asdescribed in FIG. 9 below. In FIG. 5, process 500 begins by receivingthe loopback constant values and configurations at block 502. In oneembodiment, the loopback configuration is the type of electricalloopbacks used and the skew equations associated with each of theelectrical loopbacks. For example and in one embodiment, the type ofelectrical loopbacks can be the loopback as illustrated in FIGS. 4A-Dabove. In this example, the mathematical equations associated with theseelectrical loopback are equations (1)-(8) as described above. Inaddition, process 500 receives the constants for the electricalloopbacks. In one embodiment, the constants represent the skewintroduced by each of the electrical loopbacks and are known prior tobeing used by process 500.

Process 500 performs a processing loop (blocks 504-508) to measureoverall skew times for each of the electrical loopbacks used todetermine the transmit and receive PHY skew times. In one embodiment,process 500 performs the processing loop using the electrical loopbacksto determine the transmit and receive PHY skew times, such as theelectrical loopbacks as illustrated in FIGS. 4A-C above. At block 506,process 500 measures the overall S₁₂ and S₃₄ skew times for lane pairs(1,2) and (3,4), respectively, using the electrical loopback. In oneembodiment, process 500 measures the skew times by using a digitalsignal processor (DSP) that is part of the receive PHY. Process recordsthese skew times for each electrical loopback used. The processing loopends at block 508.

At block 510, process 500 optionally measures the S₁₂ and S₃₄ skew timesusing an additional electrical loopback. In one embodiment, thisadditional electrical loopback is used to check and possibly adjust thetransmit and receive PHY skew times that are computed using theelectrical loopbacks skew times measured in block 506. For example andin one embodiment, process 500 uses the electrical loopback asillustrated in FIG. 4D to generate the extra S₁₂ and S₃₄ skew times.

At block 512, process 500 computes the transmit and receive PHY skewtimes using the overall S₁₂ and S₃₄ skew times measured at block 506 andoptionally, block 510. In one embodiment, process 500 uses the measuredS₁₂ and S₃₄ skew times along with the mathematical equations associatedwith each electrical loopback used to compute the transmit and receivePHY skew times. For example and in one embodiment, process 500 uses themeasure S₁₂ and S₃₄ skew times for the electrical loopbacks asillustrated in FIGS. 4A-C along with Equations (1)-(6) to compute theT₁₂, T₂₄, T₁₃, T₂₄, R₁₂, and R₃₄ as described above. In anotherembodiment, process 500 uses an optional electrical loopback to checkand possibly adjust the computed transmit and receive PHY skew times.For example and in one embodiment, uses the measure S₁₂ and S₃₄ skewtimes for the electrical loopbacks as illustrated in FIGS. 4A-D alongwith Equations (1)-(8) to compute the T₁₂, T₂₄, T₁₃, T₂₄, R₁₂, and R₃₄as described above. At block 514, process 500 de-skews the transmit andreceive PHYs using the computed transmit and receive PHY times. Forexample and in one embodiment, for an electrical link with four lanes,process 500 de-skews this link using the computed T₁₂, T₂₄, T₁₃, T₂₄,R₁₂, and R₃₄ skew parameters.

As described above, skew parameters and de-skewing can be accomplishedusing electrical loopbacks without the need for a DCA. In addition, skewparameters and de-skewing can also be accomplished using an opticalloopback without the need for a DCA as well. FIGS. 6A-B are blockdiagrams of embodiments of using an optical loopback to determinereceive PHY skew times. In FIGS. 6A-B, the optical loopback is aloopback the couples the optical transmitter with the optical receiver,respectively, via an optical signal transported across the opticalloopback. In FIG. 6A, the transmit PHY 604 is coupled to an optical TX618 with a set of lanes 610A-D. Each of these lanes 610A-D carries anelectrical signal. In one embodiment, the electrical signals are labeledHI, HQ, VI, and VQ, which reference a different set of polarization andquadrature combinations. The optical TX 618 modulates these electricalsignals into a coherent optical signal that is transported over anoptical loopback 608. In this embodiment, each of the lanes represents adifferent combination of polarization and quadrature. For example and inone embodiment, lanes 1-4 610A-D of the transmit PHY correspond to HI,HQ, VI, and VQ. For each of these lanes, the optical TX 618 includestransmit optical drivers 612A-D to convert the electrical signals fromthe electrical transmit PHY 604 to a coherent optical signal that isreceived by an optical RX 622. The optical RX 622 converts the opticalsignal into a set of electrical signals that is transmitted to thereceive PHY 606. In one embodiment, if a single optical signal componentof a coherent optical signal is generated for a lane, a secondaryoptical signal component can be detected and recovered in an adjacentlane as the optical signal component from one lane can bleed intoanother lane. For example and in one embodiment, if an optical signalcomponent 614 is generated for lane 1 using transmit optical driver612A, the optical signal component 614 is recovered for lane 1 (608A)for the receive PHY 606. In addition, a secondary optical signalcomponent 616 is recovered by the receive PHY 606 in lane 2 (608B). Inone embodiment, each of these optical signal component (614 and 616) aregenerated at the same time because the optical signal component aregenerated from the same source, transmit optical driver 612A. This meansthere is no transmit skew. For example and in one embodiment, thecoherent optical signal in the optical loopback rotates, which can causethe secondary optical signal component to be generated. In thisembodiment, the skew detected between lanes 1 and 2 is due to the skewof the receive PHY 606 and the optical receiver, R₁₂. In one embodiment,a logic digital signal processor (DSP) that is part of the receive PHY606 analyzes the signal. In this embodiment, a supervisor computer 620receives the measurement data and records R₁₂. Thus, by transmitting asignal on lanes of the transmit PHY 604 can be used to determine the sumof the optical receiver and receive PHY 606 skew for lanes 1 and 2, R₁₂.In one embodiment, the system 600 includes a supervisor 620 that recordsthe overall skew times and solves for the receive PHY skew times. In oneembodiment, the supervisor 620 is a separate computer that includes anoptical skew module 624 that controls the skew time measurement andrecords the skew times. In another embodiment, the supervisor 620 ispart of the network element that is testing and recording the skewtimes.

Similarly, R₃₄ can be determined using a coherent optical signalgenerated from a single signal component corresponding to lane 3. InFIG. 6B, the transmit PHY 654 is coupled to an optical TX 668 with a setof lanes 660A-D. Each of these lanes 660A-D carries an electricalsignal. In one embodiment, the electrical signals are labeled HI, HQ,VI, and VQ, which reference a different set of polarization andquadrature combinations. The optical TX 668 modulates these electricalsignals into a coherent optical signal that is transported over anoptical loopback 658. In one embodiment, each of the lanes 660A-Dcorrespond to polarization and quadrature combinations of HI 660A, HQ660B, VI 660C, and VQ 660D. The optical RX 672 converts the opticalsignal into a set of electrical signals that is transmitted to thereceive PHY 656. In one embodiment, if a single optical signal componentfor is generated for a lane, a secondary optical signal component can bedetected and recovered in an adjacent lane as the optical signalcomponent from one lane can bleed into another lane. For example and inone embodiment, if an optical signal component 664 is generated for lane3 using transmit optical driver 668C, the optical signal component 664is recovered for lane 3 (658C) for the receive PHY 656. In addition, asecondary optical signal component 666 is recovered by the receive PHY656 in lane 4 (658D). In one embodiment, each of these optical signalcomponent (664 and 666) are generated at the same time because theoptical signals are generated from the same source, transmit opticaldriver 662C. In one embodiment, a logic DSP that is part of the receivePHY 656 analyzes the signal. In this embodiment, a supervisor computer670 receives the measurement data and records R₃₄. In this embodiment,the skew detected between lanes 3 and 4 is due to the skew of thereceive PHY 656, R₃₄. In one embodiment, the system 650 includes asupervisor 670 that records the overall skew times and solves for thereceive PHY skew times. In one embodiment, the supervisor 670 is aseparate computer that includes an optical skew module 674 that controlsthe skew time measurement and records the skew times. In anotherembodiment, the supervisor 670 is part of the network element that istesting and recording the skew times.

In FIGS. 6A-B, the receive PHY skew times, R₁₂ and R₃₄ can be determinedby sending an electrical signal down one of the lanes using an opticalloopback. What is needed is to determine the transmit PHY skew timesusing the optical loopback. FIG. 7A-C are block diagrams of embodimentsof using an optical loopback to determine transmit PHY skew times. InFIG. 7A, the transmit PHY 704 is coupled to an optical TX 702 with a setof lanes 710A-D. Each of these lanes 710A-D carries an electricalsignal. In one embodiment, the electrical signals are labeled HI, HQ,VI, and VQ, which reference a different set of polarization andquadrature combinations. The optical TX 702 modulates these electricalsignals into a coherent optical signal that is transported over anoptical loopback 708. Each of the transmit 704 and receive 706 PHYs areelectrical PHYs. The optical loopback 708 transports the optical signalto the optical RX 722. The optical RX 722 converts the optical signalinto a set of electrical signals that is transmitted to the receive PHY706. The T₁₂ skew is adjusted by the supervisor 720 until signal isproperly recovered by the DSP that is part of the receive PHY 706. Thefinal adjustment is a measure of the T₁₂ skew.

In one embodiment, the T₁₂ skew time is determined by sending a pulse onlanes 1 and 2 of the transmit PHY 704. In this embodiment, the opticalTX 702 generates a coherent optical signal with two optical signalcomponents 714A-B from these pulses. The coherent optical signal isrecovered in the receive PHY 706 in lanes 1 and 2 (708A-B). In addition,two secondary optical signal components 716A-B are also generated fromthe transmit optical drivers 712A-B. Thus, each of the receive PHY lanes1 and 2 receive two different electrical signals. Because theseelectrical signals originate from two different transmit PHY lanes,there will be a skew T₁₂ between the two different electrical signalsreceived on each lane 1 and 2 (708A-B). With an unknown skew, thereceived electrical signals may not be recoverable by the RX DSP that ispart of the receive PHY 706. This is because the RX DSP cannot interpretthe electrical signals that are not within the required skew tolerances.In one embodiment, the supervisor computer 720 adjusts the relativeorigination times of the electrical signals generated by lanes 1 and 2of the transmit PHY 704 such that the RX DSP detects a recoverablesignal on each of the lanes 1 and 2 (708A-B) of the receive PHY 704. Inthis embodiment, the difference of the origination times is related tothe transmit skew time, T₁₂ and the receive skew time, R₁₂. Since thereceive skew time is known from the determination as illustrated in FIG.6A, the transmit skew time, T₁₂ can be determined. In one embodiment,the system 700 includes a supervisor 720 that records the overall skewtimes and solves for the receive PHY skew times. In one embodiment, thesupervisor 720 is a separate computer that includes an optical skewmodule 724 that controls the skew time measurement and records the skewtimes. In another embodiment, the supervisor 720 is part of the networkelement that is testing and recording the skew times.

Similarly, the transmit skew time, T₃₄, can be determined by sendingsignals originating from lanes 3 and 4 of the transmit PHY. In FIG. 7B,the transmit PHY 734 is coupled to an optical TX 732 with a set of lanes740A-D. Each of these lanes 740A-D carries an electrical signal. In oneembodiment, the electrical signals are labeled HI, HQ, VI, and VQ, whichreference a different set of polarization and quadrature combinations.The optical TX 732 modulates these electrical signals into a coherentoptical signal that is transported over an optical loopback 738. Theoptical loopback 738 transports the optical signal to the optical RX752. The optical RX 752 converts the optical signal into a set ofelectrical signals that is transmitted to the receive PHY 706. The T34skew is adjusted by the supervisor 720 until signal is properlyrecovered by the DSP that is part of the receive PHY 752. The finaladjustment is a measure of the T34 skew.

In one embodiment, the T₃₄ skew time is determined by sending a pulse onlanes 3 and 4 of the transmit PHY 734. In this embodiment, the opticalTX 732 generates a coherent optical signal with two optical signalcomponents 744A-B from these pulses. The coherent optical signal isrecovered in the receive PHY 736 in lanes 3 and 4 (738C-D). In addition,two secondary optical signal components 746A-B are also generated fromthe transmit optical drivers 748C-D. Thus, each of the receive PHY lanes3 and 4 receive two different electrical signals. Because theseelectrical signals originate from two different transmit PHY lanes,there will be a skew T₃₄ between the two different electrical signalsreceived on each lane 3 and 4 (738C-D). With an unknown skew, thereceived electrical signals may not be recoverable by the RX DSP that ispart of the receive PHY 706. This is because the RX DSP cannot interpretthe electrical signals that are not within the required skew tolerances.In one embodiment, the T34 module 750 adjusts the relative originationtimes of the electrical signals generated by lanes 3 and 4 of thetransmit PHY 734 such that the RX DSP 736 detects a recoverable signalon each of the lanes 3 and 4 (738C-D) of the receive PHY 736. In thisembodiment, the difference of the origination times is related to thetransmit skew time, T₃₄ and the receive skew time, R₃₄. Since thereceive skew time is known from the determination as illustrated in FIG.6B, the transmit skew time, T₃₄ can be determined. In one embodiment,the system 730 includes a supervisor 750 that records the overall skewtimes and solves for the receive PHY skew times. In one embodiment, thesupervisor 750 is a separate computer that includes an optical skewmodule 754 that controls the skew time measurement and records the skewtimes. In another embodiment, the supervisor 750 is part of the networkelement that is testing and recording the skew times.

As is illustrated in FIGS. 7A-B, the transmit skew times, T₁₂ and T₃₄,can be determined. In one embodiment, with these skew times, therelative skew between lanes 1 and 2, and the relative skew between lanes3 and 4 of the transmit PHY can be determined and compensated for.However, the relative skew between lane pairs (1,2) and (3,4) is notknown. In one embodiment, the relative skew between lanes (1,2) and(3,4) can be determined by sending signals down lanes 1-4. In FIG. 7C,the transmit PHY 764 is coupled to an optical TX 762 with a set of lanes770A-D. Each of the transmit 764 and receive 766 PHYs are electricalPHYs and each of these lanes 770A-D and 768A-D carries an electricalsignal. In one embodiment, the electrical signals are labeled HI, HQ,VI, and VQ, which reference a different set of polarization andquadrature combinations. The optical TX 762 modulates these electricalsignals into a coherent optical signal that is transported over anoptical loopback 768 to the optical RX 782. The optical RX 782 convertsthe optical signal into a set of electrical signals that is transmittedto the receive PHY 766. The T₁₂-T₃₄ skew is adjusted by the supervisor780 until signal is properly recovered by the DSP that is part of thereceive PHY 766. The final adjustment is a measure of the T₂₃ skew (oralternatively, the T₁₃, T₁₄, or T₂₄ skew times).

In one embodiment, the T₂₃ skew time is determined by sending a pulse onlanes 1-4 of the transmit PHY 764. In this embodiment, the optical TX762 generates a coherent optical signal with four optical signalcomponents 774A-D from these pulses. The coherent optical signal isrecovered in the transmit PHY 766 in lanes 1-4 (768A-D). In addition,the coherent optical signal includes an additional twelve secondaryoptical signals 776A-D are also generated from the transmit opticaldrivers 778A-D. Thus, each of the receive PHY lanes 1-4 receive anelectrical signal that was due to four different optical signalscomponents. Because these electrical signals originate from fourdifferent transmit PHY lanes, there will be a skew T₂₃ between the fourdifferent electrical signals received on each lane 1-4 (768A-D). With anunknown skew, the received electrical signals are may not be recoverableby the RX DSP that is part of the receive PHY 766. This is because theRX DSP cannot interpret the electrical signals that are not within therequired skew tolerances. In one embodiment, the RX DSP adjusts therelative origination times of the electrical signals generated by lanes1-4 of the transmit PHY 764 such that the RX DSP detects a recoverablesignal on each of the lanes 1-4 (768A-D) of the receive PHY 766. In thisembodiment, the difference of the origination times is related to thetransmit skew times, (T₁₂, T₃₄, and T₂₃) and the receive skew time, (R₁₂and R₃₄) Since the transmit and receive skew times are known (except forT₂₃) from the determination as illustrated in FIGS. 6A-B and 7A-B, thetransmit skew time, T₂₃ can be determined. In one embodiment, the system760 includes a supervisor 780 that records the overall skew times andsolves for the receive PHY skew times. In one embodiment, the supervisor780 is a separate computer that includes an optical skew module 784 thatcontrols the skew time measurement and records the skew times. Inanother embodiment, the supervisor 780 is part of the network elementthat is testing and recording the skew times.

FIG. 8 is a flow diagram of one embodiment of a process to determineelectrical skew times of an electrical signal with multiple lanes usingan optical loopback. In one embodiment, an optical skew module performsprocess 800, such as the optical skew module 1000 as described in FIG.10 below. In FIG. 8, process 800 begins by determining a R₁₂ skew bygenerating a coherent optical signal with one optical signal componentfor transmit lane 1 and measuring the optical signal components in lanes1 and 2 of a receive PHY at block 802. In one embodiment, process 800determines the R₁₂ skew by generating a coherent optical signal with oneoptical signal component for transmit lane 1 and measuring the opticalsignal components for lanes 1 and 2 as described in FIG. 6A above. Atblock 804, process 800 determines a R₃₄ skew by generating a coherentoptical signal with one optical signal component for transmit lane 3 andmeasuring the optical signal components in lanes 3 and 4 of a receivePHY. In one embodiment, process 800 determines the R₃₄ skew bygenerating a coherent optical signal with one optical signal componentfor transmit lane 3 and measuring the optical signal components in lanes3 and 4 as described in FIG. 6B above.

With the R₁₂ and R₃₄ receive skew times know, process 800 can determinethe transmit skew times. Process 800 determines the T₁₂ skew time bytuning the transmit lane 1 and 2 signals and using the R₁₂ skew time atblock 806. In one embodiment, process 800 determines the T₁₂ skew timeby tuning transmit lane 1 and 2 signals and using the R₁₂ skew time asdescribed in FIG. 7A above. At block 808, process 800 determines the T₃₄skew time by tuning the transmit lane 3 and 4 signals and using the R₃₄skew time. In one embodiment, process 800 determines the T₃₄ skew timeby tuning the transmit lane 3 and 4 signals and using the R₃₄ skew timeas described in FIG. 7B above. Process 800 determines the T₂₃ skew bytuning the lane (1,2) and (3,4) signal pairs and using the R₁₂ and R₃₄skew times at block 810. In one embodiment, process 800 determines theT₂₃ skew by tuning the lane (1,2) and (3,4) signal pairs and using theR₁₂ and R₃₄ skew times as described in FIG. 7C above.

FIG. 9 is a block diagram of one embodiment of an electrical skew module900 that uses different electrical loopbacks to determine skew times ofan electrical signal with multiple lanes. In one embodiment, theelectrical skew module is the electrical skew module as described inFIGS. 4A-D above. In one embodiment, the electrical skew module 900includes a receive input module 902, measure skew times module 904, andcalculate skew times module 906. In one embodiment, the receive inputmodule 902 receives the configuration and constant input as described inFIG. 5, block 502 above. The measure skew times module 904 measure theskew using the different electrical loopback configurations as describedin FIG. 5, blocks 506 and 510 above. The calculate skew times module 906calculate the transmit and receive skew times using the measurements asdescribed in FIG. 5, block 512 above.

FIG. 10 is a block diagram of one embodiment of an optical skew module1000 that determines electrical skew times of an electrical signal withmultiple lanes using an optical loopback. In one embodiment, the opticalskew module is the optical skew module as described in FIGS. 6A-B and7A-C above. In one embodiment, the optical skew module 1000 includesdetermine R₁₂ skew module 1002, determine R₃₄ skew module 1004,determine T₁₂ skew module 1006, determine T₃₄ skew module 1008, anddetermine T₁₂-T₃₄ skew module 1010. In one embodiment, the determine R₁₂skew module 1002 determines the R₁₂ skew time as described in FIG. 8,block 802 above. The determine R₃₄ skew module 1004 determines the R₃₄skew time as described in FIG. 8, block 804 above. The determine T₁₂skew module 1006 determines the T₁₂ skew time as described in FIG. 8,block 806 above. The determine T₃₄ skew module 1008 determines the T₃₄skew time as described in FIG. 8, block 808 above. The determine T₁₂-T₃₄skew module 1010 determines the T₁₂-T₃₄ skew time as described in FIG.8, block 810 above.

FIG. 11 shows one example of a data processing system 1100, which may beused with one embodiment of the present invention. For example, thesystem 1100 may be implemented including a network element 100 as shownin FIG. 1. Note that while FIG. 11 illustrates various components of acomputer system, it is not intended to represent any particulararchitecture or manner of interconnecting the components as such detailsare not germane to the present invention. It will also be appreciatedthat network computers and other data processing systems or otherconsumer electronic devices, which have fewer components or perhaps morecomponents, may also be used with the present invention.

As shown in FIG. 11, the computer system 1100, which is a form of a dataprocessing system, includes a bus 1103 which is coupled to amicroprocessor(s) 1105 and a ROM (Read Only Memory) 1107 and volatileRAM 1109 and a non-volatile memory 1111. The microprocessor 1105 mayretrieve the instructions from the memories 1107, 1109, 1111 and executethe instructions to perform operations described above. The bus 1103interconnects these various components together and also interconnectsthese components 1105, 1107, 1109, and 1111 to a display controller anddisplay device 1117 and to peripheral devices such as input/output (I/O)devices which may be mice, keyboards, modems, network interfaces,printers and other devices which are well known in the art. In oneembodiment, the system 1100 includes a plurality of network interfacesof the same or different type (e.g., Ethernet copper interface, Ethernetfiber interfaces, wireless, and/or other types of network interfaces).In this embodiment, the system 1100 can include a forwarding engine toforward network date received on one interface out another interface.

Typically, the input/output devices 1115 are coupled to the systemthrough input/output controllers 1113. The volatile RAM (Random AccessMemory) 1109 is typically implemented as dynamic RAM (DRAM), whichrequires power continually in order to refresh or maintain the data inthe memory.

The mass storage 1111 is typically a magnetic hard drive or a magneticoptical drive or an optical drive or a DVD ROM/RAM or a flash memory orother types of memory systems, which maintains data (e.g. large amountsof data) even after power is removed from the system. Typically, themass storage 1111 will also be a random access memory although this isnot required. While FIG. 11 shows that the mass storage 1111 is a localdevice coupled directly to the rest of the components in the dataprocessing system, it will be appreciated that the present invention mayutilize a non-volatile memory which is remote from the system, such as anetwork storage device which is coupled to the data processing systemthrough a network interface such as a modem, an Ethernet interface or awireless network. The bus 1103 may include one or more buses connectedto each other through various bridges, controllers and/or adapters as iswell known in the art.

Portions of what was described above may be implemented with logiccircuitry such as a dedicated logic circuit or with a microcontroller orother form of processing core that executes program code instructions.Thus processes taught by the discussion above may be performed withprogram code such as machine-executable instructions that cause amachine that executes these instructions to perform certain functions.In this context, a “machine” may be a machine that converts intermediateform (or “abstract”) instructions into processor specific instructions(e.g., an abstract execution environment such as a “process virtualmachine” (e.g., a Java Virtual Machine), an interpreter, a CommonLanguage Runtime, a high-level language virtual machine, etc.), and/or,electronic circuitry disposed on a semiconductor chip (e.g., “logiccircuitry” implemented with transistors) designed to executeinstructions such as a general-purpose processor and/or aspecial-purpose processor. Processes taught by the discussion above mayalso be performed by (in the alternative to a machine or in combinationwith a machine) electronic circuitry designed to perform the processes(or a portion thereof) without the execution of program code.

The present invention also relates to an apparatus for performing theoperations described herein. This apparatus may be specially constructedfor the required purpose, or it may comprise a general-purpose computerselectively activated or reconfigured by a computer program stored inthe computer. Such a computer program may be stored in a computerreadable storage medium, such as, but is not limited to, any type ofdisk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), RAMs, EPROMs,EEPROMs, magnetic or optical cards, or any type of media suitable forstoring electronic instructions, and each coupled to a computer systembus.

A machine readable medium includes any mechanism for storing ortransmitting information in a form readable by a machine (e.g., acomputer). For example, a machine readable medium includes read onlymemory (“ROM”); random access memory (“RAM”); magnetic disk storagemedia; optical storage media; flash memory devices; etc.

An article of manufacture may be used to store program code. An articleof manufacture that stores program code may be embodied as, but is notlimited to, one or more memories (e.g., one or more flash memories,random access memories (static, dynamic or other)), optical disks,CD-ROMs, DVD ROMs, EPROMs, EEPROMs, magnetic or optical cards or othertype of machine-readable media suitable for storing electronicinstructions. Program code may also be downloaded from a remote computer(e.g., a server) to a requesting computer (e.g., a client) by way ofdata signals embodied in a propagation medium (e.g., via a communicationlink (e.g., a network connection)).

FIG. 12 is a block diagram of one embodiment of an exemplary networkelement 1200 that determines transmit and receive skew times betweenpairs of a plurality of lanes of an electrical interface. In FIG. 12,the backplane 1206 couples to the line cards 1202A-N and controllercards 1204A-B. While in one embodiment, the line cards 1204A-B measurethe different skew times between pairs of a plurality of lanes of anelectrical interface. In one embodiment, the line cards 1202A-N processand forward traffic according to the network policies received fromcontroller cards the 1204A-B. It should be understood that thearchitecture of the network element 1200 illustrated in FIG. 12 isexemplary, and different combinations of cards may be used in otherembodiments of the invention.

The preceding detailed descriptions are presented in terms of algorithmsand symbolic representations of operations on data bits within acomputer memory. These algorithmic descriptions and representations arethe tools used by those skilled in the data processing arts to mosteffectively convey the substance of their work to others skilled in theart. An algorithm is here, and generally, conceived to be aself-consistent sequence of operations leading to a desired result. Theoperations are those requiring physical manipulations of physicalquantities. Usually, though not necessarily, these quantities take theform of electrical or magnetic signals capable of being stored,transferred, combined, compared, and otherwise manipulated. It hasproven convenient at times, principally for reasons of common usage, torefer to these signals as bits, values, elements, symbols, characters,terms, numbers, or the like.

It should be kept in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the above discussion, itis appreciated that throughout the description, discussions utilizingterms such as “receiving,” “generating,” “determining,” “performing,”“coupling,” “measuring,” “computing,” “de-skewing,” “tuning,” or thelike, refer to the action and processes of a computer system, or similarelectronic computing device, that manipulates and transforms datarepresented as physical (electronic) quantities within the computersystem's registers and memories into other data similarly represented asphysical quantities within the computer system memories or registers orother such information storage, transmission or display devices.

The processes and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general-purposesystems may be used with programs in accordance with the teachingsherein, or it may prove convenient to construct a more specializedapparatus to perform the operations described. The required structurefor a variety of these systems will be evident from the descriptionbelow. In addition, the present invention is not described withreference to any particular programming language. It will be appreciatedthat a variety of programming languages may be used to implement theteachings of the invention as described herein.

The foregoing discussion merely describes some exemplary embodiments ofthe present invention. One skilled in the art will readily recognizefrom such discussion, the accompanying drawings and the claims thatvarious modifications can be made without departing from the spirit andscope of the invention.

What is claimed is:
 1. A non-transitory machine-readable medium havingexecutable instructions to cause one or more processing units perform amethod to determine transmit and receive skew times of an electricalinterface of a network element, the method comprising: coupling anoptical loopback to transmit and receive interfaces of an opticalinterface, the optical loopback capable of transporting a first opticalsignal with a plurality of polarization and quadrature combinations;determining the receive skew times by transmitting a second opticalsignal on the optical loopback with the plurality of polarization andquadrature combinations; and determining the transmit skew times bytuning transmission delays on the transmit interface for a third opticalsignal with components corresponding to multiple pairs of the pluralityof polarization and quadrature combinations such that the third opticalsignal is recoverable on the receive interface, wherein the tuning isbased on the receive skew times and the transmit skew times between atleast some of the multiple pairs of the plurality of polarization andquadrature combinations of the third optical signal.
 2. Thenon-transitory machine-readable medium of claim 1, wherein theelectrical interface includes a plurality of lanes that is used to forma coherent optical signal and each of the plurality of lanes isassociated with a different polarization and quadrature combination. 3.The non-transitory machine-readable medium of claim 1, furthercomprising: de-skewing the electrical interface with the transmit andreceive skew times.
 4. The non-transitory machine-readable medium ofclaim 1, wherein the transmit and receive interfaces are physicalinterfaces.
 5. The non-transitory machine-readable medium of claim 1,wherein the determining the receive skew times comprises: transmittingan electrical pulse for a lane of the electrical interface; receivingtwo electrical pulses; and measuring the skew between the two electricalpulses.
 6. The non-transitory machine-readable medium of claim 1,wherein the tuning the transmission delays comprises: varyingtransmission times for the pairs of the plurality of polarization andquadrature combinations.
 7. The non-transitory machine-readable mediumof claim 1, wherein the optical interface is a Wave DivisionMultiplexing interface.
 8. The non-transitory machine-readable medium ofclaim 1, wherein the first and second optical signals are from a samesource.
 9. A method to determine transmit and receive skew times of anelectrical interface of a network element, the method comprising:coupling an optical loopback to transmit and receive interfaces of anoptical interface, the optical loopback capable of transporting a firstoptical signal with a plurality of polarization and quadraturecombinations; determining the receive skew times by transmitting asecond optical signal on the optical loopback with the plurality ofpolarization and quadrature combinations; and determining the transmitskew times by tuning transmission delays on the transmit interface for athird optical signal with components corresponding to multiple pairs ofthe plurality of polarization and quadrature combinations such that thethird optical signal is recoverable on the receive interface, whereinthe tuning is based on the receive skew times and the transmit skewtimes between at least some of the multiple pairs of the plurality ofpolarization and quadrature combinations of the third optical signal.10. The method of claim 9, wherein the electrical interface includes aplurality of lanes that is used to form a coherent optical signal andeach of the plurality of lanes is associated with a differentpolarization and quadrature combination.
 11. The method of claim 10,further comprising: de-skewing the electrical interface with thetransmit and receive skew times.
 12. The method of claim 10, wherein thetransmit and receive interfaces are physical interfaces.
 13. The methodof claim 10, wherein the determining the receive skew times comprises:transmitting an electrical pulse for one of the lanes of the electricalinterface; receiving two electrical pulses; and measuring the skewbetween the two electrical pulses.
 14. The method of claim 10, whereinthe tuning the transmission delays comprises: varying transmission timesfor pairs of the plurality of polarization and quadrature combinations.15. The method of claim 10, wherein the optical interface is a WaveDivision Multiplexing interface.
 16. The method of claim 10, wherein thefirst and second optical signals are from a same source.
 17. A devicethat determines transmit and receive skew times of an electricalinterface of a network element, the device comprising: a processor; amemory coupled to the processor though a bus; and a process executedfrom the memory by the processor causes the processor to couple anoptical loopback to transmit and receive interfaces of an opticalinterface, the optical loopback capable of transporting a first opticalsignal with a plurality of polarization and quadrature combinations,determine the receive skew times by transmitting a second optical signalon the optical loopback with the plurality of polarization andquadrature combinations, and determine the transmit skew times by tuningtransmission delays on the transmit interface for a third optical signalwith components corresponding to multiple pairs of the plurality ofpolarization and quadrature combinations such that the third opticalsignal is recoverable on the receive interface, the tuning based on thereceive skew times and the transmit skew times between several of themultiple pairs of the plurality of polarization and quadraturecombinations of the third optical signal.
 18. The device of claim 17,wherein the process further causes the processor to de-skew theelectrical interface with the transmit and receive skew times.
 19. Thedevice of claim 17, wherein the transmit and receive interfaces arephysical interfaces.
 20. The device of claim 17, wherein the processcauses the processor to determine the receive skew times by transmittingelectrical pulses for lanes of the electrical interface, receiving twoelectrical pulses based one each transmitted electrical pulse, andmeasuring the skew between the two received electrical pulses.